From 7ca922ac155f076a6e8ee217998227e656390870 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 10 May 2004 15:44:48 +0000 Subject: [PATCH] Make sure the menu pops up as wide as the combobox. (#59660, Havoc 2004-05-10 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_popup) (gtk_combo_box_menu_button_press): Make sure the menu pops up as wide as the combobox. (#59660, Havoc Pennington) --- ChangeLog | 6 ++++++ ChangeLog.pre-2-10 | 6 ++++++ ChangeLog.pre-2-6 | 6 ++++++ ChangeLog.pre-2-8 | 6 ++++++ gtk/gtkcombobox.c | 13 +++++++++++++ 5 files changed, 37 insertions(+) diff --git a/ChangeLog b/ChangeLog index 670627e4c4..d6f6aa9844 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-05-10 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_popup) + (gtk_combo_box_menu_button_press): Make sure the menu pops up + as wide as the combobox. (#59660, Havoc Pennington) + 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 670627e4c4..d6f6aa9844 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +2004-05-10 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_popup) + (gtk_combo_box_menu_button_press): Make sure the menu pops up + as wide as the combobox. (#59660, Havoc Pennington) + 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 670627e4c4..d6f6aa9844 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +2004-05-10 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_popup) + (gtk_combo_box_menu_button_press): Make sure the menu pops up + as wide as the combobox. (#59660, Havoc Pennington) + 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 670627e4c4..d6f6aa9844 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +2004-05-10 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_popup) + (gtk_combo_box_menu_button_press): Make sure the menu pops up + as wide as the combobox. (#59660, Havoc Pennington) + 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index 18cd9ddd81..069fbefb1e 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -1150,6 +1150,12 @@ gtk_combo_box_popup (GtkComboBox *combo_box) gtk_menu_set_active (GTK_MENU (combo_box->priv->popup_widget), combo_box->priv->active_item); + if (combo_box->priv->wrap_width == 0) + { + width = GTK_WIDGET (combo_box)->allocation.width; + gtk_widget_set_size_request (combo_box->priv->popup_widget, width, -1); + } + gtk_menu_popup (GTK_MENU (combo_box->priv->popup_widget), NULL, NULL, gtk_combo_box_menu_position, combo_box, @@ -1921,6 +1927,7 @@ gtk_combo_box_menu_button_press (GtkWidget *widget, gpointer user_data) { GtkComboBox *combo_box = GTK_COMBO_BOX (user_data); + gint width; if (! GTK_IS_MENU (combo_box->priv->popup_widget)) return FALSE; @@ -1932,6 +1939,12 @@ gtk_combo_box_menu_button_press (GtkWidget *widget, gtk_menu_set_active (GTK_MENU (combo_box->priv->popup_widget), combo_box->priv->active_item); + if (combo_box->priv->wrap_width == 0) + { + width = GTK_WIDGET (combo_box)->allocation.width; + gtk_widget_set_size_request (combo_box->priv->popup_widget, width, -1); + } + gtk_menu_popup (GTK_MENU (combo_box->priv->popup_widget), NULL, NULL, gtk_combo_box_menu_position, combo_box, -- 2.30.2